This invention relates to an error-correcting code creating method effective in recording video data, audio data, or computer data onto a medium (such as an optical disk or a magnetic disk) or in reproducing the data recorded on a medium.
The invention further relates to an error-correcting code creating method effective in transmitting or receiving the video data or the like.
The invention still further relates to a recording device, a reproducing device, and a receiving device which employ the error-correcting code creating method.
The invention is particularly characterized by a method of correcting errors using a buffer memory in carrying out an error correcting process.
When video data, audio data, computer data, or the like is recorded onto, for example, an optical disk or a magnetic disk, error-correcting code is added to the data blocks. In the error-correcting code adding process, a data block is temporarily stored in a memory and the error-correcting codes for the rows and columns of the data block are created.
An error-correcting code added to a row is usually called inner parity and abbreviated as PI. An error-correcting code added to a column is usually called outer parity and abbreviated as PO.
In the error-correcting code adding process, when a data block is temporarily stored in the memory before the generation of an error-correcting code, part of the data on the memory can be destroyed (or an error can occur). The destruction may be ascribed to the data pattern or the mounting state of the memory. In addition, external sudden noise may have an adverse effect.
The error occurred at that time is called a memory error.
In such a case, an error-correcting code for a data block where a memory error has occurred (hereinafter, referred to as an altered data block) is created. The error-correcting code is added to the altered data block and the resulting block is recorded on a recording medium.
When the data is reproduced from the recording medium, the error-correcting circuit uses the error-correcting code to perform an error-correcting process on the altered data block. That is, the altered data block is reproduced correctly. This means that the data block including the memory error has been reproduced correctly. The memory error, however, is unnecessary for the original data.
Consequently, when the memory error has occurred, it is impossible to restore the original data correctly.